package com.jimmy.medical.service;

import com.jimmy.medical.entity.*;
import com.jimmy.medical.model.ContractService;
import com.jimmy.medical.model.SingleService;

import java.lang.reflect.InvocationTargetException;
import java.util.List;

/**
 * 销售
 * @author jimmy
 */
public interface ISaleService {

    List<MemberTypeServiceItem> findAllSingleService();

    List<MemberType> findAllMemberType();

    List<Commodity> findAllCommodity();

    RechargeRecordServiceItem getSingleServiceRestCount(SingleService singleService);

    RechargeRecordServiceItem saveSingleService(SingleService singleService) throws InvocationTargetException, IllegalAccessException;

    RechargeRecord saveContractService(ContractService contractService) throws InvocationTargetException, IllegalAccessException;

    /**
     * 生成支付订单号,并保存
     * @param flowOrderId
     */
    String savePayOrderNo(Long flowOrderId);

    String savePaySingleServiceNo(Long singleServiceId);

    String savePayContractNo(Long singleServiceId);
}